package ${properties.pojoPkgName};


import java.io.Serializable;
<#if (exportKey?size > 0)>
import java.util.Set;
import java.util.HashSet;
import com.alibaba.fastjson.annotation.JSONField;
</#if>
public class ${className} implements Serializable{
	static final long serialVersionUID = 1L;
<#list fields as pro>
	private ${pro.classType} ${pro.className?uncap_first};
</#list>
<#list exportKey as expKey>
	private transient Set<${expKey.keyTableClassName}> ${expKey.keyTableClassName?uncap_first}s = new HashSet<${expKey.keyTableClassName}>(0);
</#list>	
	public ${className}() {
	}
	
<#list fields as pro>
	public void set${pro.className}(${pro.classType} ${pro.className?uncap_first}){
		this.${pro.className?uncap_first}=${pro.className?uncap_first};
	}
	
	public ${pro.classType} get${pro.className}(){
		return this.${pro.className?uncap_first};
	}	
</#list>
<#list exportKey as expKey>
	public void set${expKey.keyTableClassName}s (Set<${expKey.keyTableClassName}> ${expKey.keyTableClassName?uncap_first}s){
		this.${expKey.keyTableClassName?uncap_first}s=${expKey.keyTableClassName?uncap_first}s;
	}
	@JSONField(serialize=false)
	public Set<${expKey.keyTableClassName}> get${expKey.keyTableClassName}s(){
		return this.${expKey.keyTableClassName?uncap_first}s;
	}	
</#list>
    
    public String toString(){
    	return new StringBuilder()
    	.append("${className}")
    	<#list fields as pro>
    	.append(", ${pro.className?uncap_first}="+${pro.className?uncap_first})
    	</#list>
    	.toString();
    }

}